The present invention relates to a method and apparatus for transmitting a coded video signal in real time via a data network. More particularly, the present invention relates to a method and apparatus for transmitting an encoded digital video signal in real time via a data network wherein the encoding of the video image involves using a compression algorithm having a variable mid-rate to provide the digitally encoded data stream.
Since the mid-'90s, JPEG (Joint Photographic Export Group) is a standard that has been very widely used in the compression of digital still images. However, and more recently, the study of wavelets, particularly wavelet transformers, has led to a new compression method that is called JPEG 2000 or JPEG2K and variations thereof. Unlike the original JPEG algorithm, the JPEG 2000 or JPEG2K algorithm can be applied to both still images and to motion video.
JPEG2K allows for up to a 200-1 compression ratio with very little appreciable degradation in image quality, and has a lossy and lossless version of the image compression. The image compression and the impressive compression ratios are primarily obtained through segmentation of the video image or video frame into regions of interest (ROI's), and then applying an optimum family of wavelet transforms onto the region. However, this impressive compression capacity comes as a trade-off of implementation complexity. This has generally led to most real-time JPEG2K systems currently available to be hardwire based.
The ROI-based scheme has resulted in the JPEG2K encoding to be based on quality levels as opposed to numerical encoding bit rate levels, as seen, for example, in MPEG 2, MPEG 4, etc schemes. As a result, in a JPEG 2K system, one decides among the different quality levels available to configure the encoding process. For example, low, medium, and high can form one particular quality characterization. These categories in turn are mapped to a numerical value of the difference between the original and the JPEG2K reconstituted frame. In order to map the low, medium and high levels to the error, a metric such as Mean-Square-Error (MSE) can and often is used.
The quality-based encoding process used in JPEG2K leads to a variable bit rate encoding system. That is, the bit rate is dependent on the image or video content. For example, a scene with motion would produce a larger encoding bit rate than a scene with no motion for a given quality level. In the practical high-definition (HD) based JPEG2K systems, it is common to see the instantaneous coding rate vary from 2.4 Mbps for a still scene, to 64 Mbps for a complex scene. However, this variable bit rate poses a challenge in a streaming environment of a data network, e.g., the internet streaming environment. To accommodate the dynamic nature of the network bandwidth, most streaming systems use a constant bit rate streaming mechanism. The constant bit rate is chosen to provide the maximum likelihood of error-free transmission within the network. Streaming protocols such as RSVP are used to reserve bandwidth with such constant bandwidth streaming channels. In the above environments, the variable bit rate of JPEG2K poses a problem.
It is the general object of the present invention to control the encoding bit rate and/or the streaming bit rate so as to be better able to control the streaming bit rate within the confines of the streaming environment, while at the same time permitting maximum quality of transmission.